package com.idc.resource.service;

import com.idc.resource.dal.dto.TBasicCityCode;
import com.idc.resource.manager.CityInfoManager;
import com.idc.resource.model.CityReqDto;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 城市服务
 * Created by Lijing on 2017/7/13.
 */
@Slf4j
@Service
public class CityService {

    /** 城市管理 */
    @Autowired
    private CityInfoManager cityInfoManager;

    /**
     * 根据省份名称模糊查询省份信息
     * @param cityReqDto 城市请求参数
     * @return 省份信息
     */
    public List<TBasicCityCode> getProvinces(CityReqDto cityReqDto){
        return cityInfoManager.queryProvinces(cityReqDto.getProvinceName());
    }

    /**
     *  获取城市信息
     * @param cityReqDto 请求参数
     * @return 城市信息
     */
    public List<TBasicCityCode> getCities(CityReqDto cityReqDto){
        if(StringUtils.isBlank(cityReqDto.getProvinceCode())){
            cityReqDto.setProvinceCode(null);
        }
        return cityInfoManager.queryCitys(cityReqDto.getProvinceCode());
    }

    /**
     * 获取地市信息
     * @param cityReqDto 请求参数
     * @return 地市信息
     */
    public List<TBasicCityCode> getCounties(CityReqDto cityReqDto){
        if(StringUtils.isBlank(cityReqDto.getCityCode())){
            cityReqDto.setCityCode(null);
        }
        if(StringUtils.isBlank(cityReqDto.getProvinceCode())){
            cityReqDto.setProvinceCode(null);
        }
        return cityInfoManager.queryCounties(cityReqDto.getProvinceCode(),cityReqDto.getCityCode());
    }
}
